home *** CD-ROM | disk | FTP | other *** search
- The drawings contained in this Recommendation have been done in AUTOCAD
- Recommendation X.500
- THE DIRECTORY - OVERVIEW OF CONCEPTS, MODELS AND SERVICES 1)
- (Melbourne, 1988)
- CONTENTS
- 0 Introduction
- 1 Scope and field of application
- 2 References
- 3 Definitions
- 3.1 OSI reference model definitions
- 3.2 Basic directory definitions
- 3.3 Directory model definitions
- 3.4 Distributed operation definitions
- 4 Abbreviations
- 5 Overview of the directory
- 6 The directory information base (DIB)
- 7 The directory service
- 7.1 Introduction
- 7.2 Service qualification
- 7.3 Directory interrogation
- 7.4 Directory modification
- 7.5 Other outcomes
- 8 The distributed directory
- 8.1 Functional model
- 8.2 Organizational model
- 8.3 Operation of the model
- 9 Directory protocols
- Annex A - Applying the directory
- A.1 The directory environment
- A.2 Directory service characteristics
- A.3 Patterns of use of the directory
- A.4 Generic applications
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1) Recommendation X.500 and ISO 9594-1, The Directory - Overview of Concepts, Models and
- Services, were developed in close collaboration and are technically aligned.
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
- 0 Introduction
- 0.1 This document, together with the others of the series, has been produced
- to facilitate the interconnection of information processing systems to provide
- directory services. The set of all such systems, together with the directory
- information which they hold, can be viewed as an integrated whole, called the
- Directory. The information held by the Directory, collectively known as the
- Directory Information Base (DIB), is typically used to facilitate communication
- between, with or about objects such as application entities, people, terminals
- and distribution lists.
- 0.2 The Directory plays a significant role in Open Systems Interconnection,
- whose aim is to allow, with a minimum of technical agreement outside of the
- interconnection standards themselves, the interconnection of information
- processing systems:
- - from different manufacturers;
- - under different managements;
- - of different levels of complexity; and
- - of different ages.
- 0.3 This Recommendation introduces and models the concepts of the Directory
- and of the DIB and overviews the services and capabilities which they provide.
- Other Recommendations make use of these models in defining the abstract service
- provided by the Directory, and in specifying the protocols through which this
- service can be obtained or propagated.
- 1 Scope and field of application
- 1.1 The Directory provides the directory capabilities required by OSI
- applications, OSI management processes, other OSI layer entities, and
- telecommunication services. Among the capabilities which it provides are those
- of "user-friendly naming" whereby objects can be referred to by names which are
- suitable for citing by human use s (though not all objects need have user-
- friendly names); and "name- to-address mapping" which allows the binding between
- objects and their locations to be dynamic. The latter capability allows OSI
- networks, for example, to be "self-configuring" in the sense that addition,
- removal and the changes of object location do not affect OSI network operation.
- 1.2 The Directory is not intended to be a general-purpose data base system,
- although it may be built on such systems. It is assumed, for instance, that, as
- is typical with communications directories, there is a considerably higher
- frequency of "queries" than of updates. The rate of updates is expected to be
- governed by the dynamics of people and organizations, rather than, for example,
- the dynamics of networks. There is also no need for instantaneous global
- commitment of updates: transient conditions where both old and new versions of
- the same information are available, are quite acceptable.
- 1.3 It is a characteristic of the Directory that, except as a consequence of
- differing access rights or unpropagated updates, the results of directory queries
- will not be dependent on the identity or location of the enquirer. This
- characteristic renders the Directory unsuitable for some telecommunications
- applications, for example some types of routing.
- 2 References
- Recommendation X.200 -Open Systems Interconnection - Basic Reference Model.
- Recommendation X.208 -Open Systems Interconnection - Specification of Abstract
- Syntax Notation One (ASN.1).
- Recommendation X.501 - The Directory - Models.
- Recommendation X.509 - The Directory - Authentication framework.
- Recommendation X.511 - The Directory - Abstract Service Definition.
- Recommendation X.518 - The Directory - Procedures for Distributed Operation.
- Recommendation X.519 - The Directory - Protocol Specifications.
- Recommendation X.520 - The Directory - Selected Attribute Types.
- Recommendation X.521 - The Directory - Selected Object Classes.
- Recommendation X.219 - Remote Operations - Model, Notation and Service
- Definition.
- Recommendation X.229 - Remote Operations - Protocol Specification.
- 3 Definitions
- The definitions contained in this make use of the abbreviations defined in
- S 4.
- 3.1 OSI reference model definitions
- This Recommendation is based on the concepts developed in
- Recommendation X.200, and makes use of the following terms therein defined:
-
-
-
-
- PAGE4 Fascicle VIII.8 - Rec.X.500
-
- a) application-entity;
- b) Application Layer;
- c) application process;
- d) application protocol data unit;
- e) application service element.
- 3.2 Basic directory definitions
- a) The Directory: a collection of open systems cooperating to provide
- directory services;
- b) Directory Information Base (DIB): the set of information managed by the
- Directory;
- c) (Directory) user: the end user of the Directory, i.e. the entity or
- person which accesses the Directory.
- 3.3 Directory model definitions
- This Recommendation makes use of the following terms defined in
- Recommendation X.501.
- a) Administration Directory Management Domain;
- b) alias;
- c) attribute;
- d) attribute type;
- e) attribute value;
- f) Directory Information Tree (DIT);
- g) Directory Management Domain (DMD);
- h) Directory System Agent (DSA);
- i) Directory User Agent (DUA);
- j) distinguished name;
- k) entry;
- l) name;
- m) object (of interest);
- n) Private Directory Management Domain;
- o) relative distinguished name;
- p) root;
- q) schema;
- r) subordinate object;
- s) superior entry;
- t) superior object;
- u) tree.
- 3.4 Distributed operation definitions
- This Recommendation makes use of the following terms defined in
- Recommendation X.518:
- a) chaining;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
- b) multicasting;
- c) referral.
- 4 Abbreviations
- ADDMD Administration Directory Management Domain
- DAP Directory Access Protocol
- DIB Directory Information Base
- DIT Directory Information Tree
- DMD Directory Management Domain
- DSA Directory System Agent
- DSP Directory System Protocol
- DUA Directory User Agent
- OSI Open Systems Interconnection
- PRDMD Private Directory Management Domain
- RDN Relative Distinguished Name
- 5 Overview of the Directory
- 5.1 The Directory is a collection of open systems which cooperate to hold a
- logical data base of information about a set of objects in the real world. The
- users of the Directory, including people and computer programs, can read or
- modify the information, or parts of it, subject to having permission to do so.
- Each user is represented in accessing the Directory by a Directory User Agent
- (DUA), which is considered to be an application-process. These concepts are
- illustrated in Figure 1/X.500.
- FIGURE 1/X.500 - -T0704210-88
-
- Note - This series of Recommendations refers to the Directory in the
- singular, and reflects the intention to create, through a single, unified, name
- space, one logical directory composed of many systems and serving many
- applications. Whether or not these systems choose to interwork will depend on
- the needs of the applicatio s they support. Applications dealing with non-
- intersecting worlds of objects, may have no such need. The single name space
- facilitates later interworking should the needs change.
- 5.2 The information held in the Directory is collectively known as the
- Directory Information Base (DIB). Clause 6 of this Recommendation overviews its
- structure.
- 5.3 The Directory provides a well-defined set of access capabilities, known as
- the abstract service of the Directory, to its users. This service, which is
- overviewed in 7 of this Recommendation provides a simple modification and
- retrieval capability. This can be built on with local DUA functions to provide
- the capabilities required by the end-users.
- 5.4 It is likely that the Directory will be distributed, perhaps widely
- distributed, both along functional and organizational lines. 8 overviews the
- corresponding models of the Directory. These have been developed in order to
- provide a framework for the cooperation of the various components to provide an
- integrated whole.
- 5.5 The provision and consumption of the Directory services requires that the
- users (actually the DUAs) and the various functional components of the Directory
- should cooperate with one another. In many cases this will require cooperation
- between application processes in different open systems, which in turn requires
- standardized application protocols, overviewed in 9, to govern this
- cooperation.
- 5.6 The Directory has been designed so as to support multiple applications,
- drawn from a wide range of possibilities. The nature of the application
- supported will govern which objects are listed in the Directory, which users will
- access the information, and which kinds of access they will carry out.
- Applications may be very specific, such as the provision of distribution lists
- for electronic mail, or generic, such as the "inter-personal communications
- directory" application. The Directory provides the opportunity to exploit
- commonalities among the applications:
- - a single object may be relevant to more than one application; perhaps
- even the same piece of information about the same object may be so
- relevant.
- To support this, a number of object classes and attribute types are
- defined, which will be useful across a range of applications. These definitions
- are contained in Recommendations X.520 and X.521:
- - certain patterns of use of the Directory will be common across a range
-
-
-
-
- PAGE4 Fascicle VIII.8 - Rec.X.500
-
- of applications: this area is overviewed further in Annex A.
- 6 The Directory Information Base (DIB)
- Note - The DIB, and its structure, are defined in Recommendation X.501.
- 6.1 The DIB is made up of information about objects. It is composed of
- (directory) entries, each of which consists of a collection of information on one
- object. Each entry is made up of attributes, each with a type and one or more
- values. The types of attribute which are present in a particular entry are
- dependent on the class of object which the entry describes.
- 6.2 The entries of the DIB are arranged in the form of a tree, the Directory
- Information Tree (DIT) where the vertices represent the entries. Entries higher
- in the tree (nearer the root) will often represent objects such as countries or
- organizations while entries lower in the tree will represent people or
- application processes.
- Note - The services defined in this Recommendation operate only on a tree-
- structured DIT. This Recommendation does not preclude the existence in the
- future of other structures (as the need arises).
- 6.3 Every entry has a distinguished name, which uniquely and unambiguously
- identifies the entry. These properties of the distinguished name are derived from
- the tree structure of the information. The distinguished name of an entry is
- made up of the distinguished name of its superior entry, together with specially
- nominated attribute values (the distinguished values) from the entry.
- 6.4 Some of the entries at the leaves of the tree are alias entries, while all
- other entries are object entries. Alias entries point to object entries, and
- provide the basis for alternative names for the corresponding objects.
- 6.5 The Directory enforces a set of rules to ensure that the DIB remains well
- formed in the face of modifications over time. These rules, known as the
- Directory schema, prevent entries having the wrong types of attributes for its
- object class, attribute values being of the wrong form for the attribute type,
- and even entries having subordinate entries of the wrong class.
- 6.6 Figure 2/X.500 illustrates the above concepts of the DIT and its
- components.
- FIGURE 2/X.500 - T0704220-88
-
- 6.7 Figure 3/X.500 gives a hypothetical example of a DIT. The tree provides
- examples of some of the types of attributes used to identify different objects.
- For example the name:
- {C = GB, L = Winslow, O = Graphic Services, CN = Laser Printer}
- identifies the application entity "Laser Printer" which has in its distinguished
- name the geographical attribute of Locality. The residential person John Jones,
- whose name is GB
- {C = GB, L = Winslow, CN = John Jones}
- has the same geographical attribute in his distinguished name.
- FIGURE 3/X.500 - T0704230-88
-
- 6.8 The growth and form of the DIT, the definition of the Directory schema,
- and the selection of distinguished names for entries as they are added, is the
- responsibility of various authorities, whose hierarchical relationship is
- reflected in the shape of the tree. The authorities must ensure, for example,
- that all of the entries in their jurisdiction have unambiguous distinguished
- names, by carefully managing the attribute types and values which appear in those
- names. Responsibility is passed down the tree from superior to subordinate
- authorities, with control being exercised by means of the schema.
- 7 The Directory service
- Note - The definition of the abstract service of the Directory can be
- found in Recommendation X.511.
- 7.1 Introduction
- 7.1.1 This provides an overview of the service provided to users, as represented
- by their DUAs, by the Directory. All services are provided by the Directory in
- response to requests from DUAs. There are requests which allow interrogation of
- the Directory, as described in S 7.3, and those for modification, as described in
- 7.4. In addition, requests for service can be qualified, as described in S 7.2.
- The Directory always reports the outcome of each request that is made of it. The
- form of the normal outcome is specific to the request, and is evident from the
- description of the request. Most abnormal outcomes are common to several
- requests. The possibilities are described in 7.5.
-
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
- 7.1.2 A number of aspects of the eventual directory service are not presently
- provided by the standards specified in this series of Recommendations. The
- corresponding capabilities will, therefore, need to be provided as a local
- function until such time as a standardized solution is available. These
- capabilities include:
- - addition and deletion of arbitrary entries, thus allowing a distributed
- Directory to be created;
- - the management of access control (i.e. granting or withdrawing
- permission for a particular user to carry out a particular access on a
- particular piece of information);
- - the management of the Directory schema;
- - the management of knowledge information;
- - the replication of parts of the DIB.
- Note - This list is not necessarily exhaustive.
- 7.1.3 The Directory ensures that changes to the DIB, whether the result of a
- Directory service request, or by some other (local) means, result in a DIB which
- continues to obey the rules of the Directory schema.
- 7.1.4 A User and the Directory are bound together for a period of time at an
- access point to the Directory. At the time of binding, the User and the
- Directory optionally verify each other's identity.
- 7.2 Service qualification
- 7.2.1 Service controls
- A number of controls can be applied to the various service requests,
- primarily to allow the user to impose limits on the use of resources which the
- Directory must not surpass. Controls are provided on, among other things: the
- amount of time, the size of the results, the scope of search the interaction
- modes, and on the priority of the request.
- 7.2.2 Security parameters
- Each request may be accompanied by information in support of security
- mechanisms for protecting the Directory information. Such information may include
- the user's request for various kinds of protection; a digital signature of the
- request, together with information to assist the correct party to verify the
- signature.
- 7.2.3 Filters
- A number of requests whose outcome involves information from or concerning
- a number of entries, may carry with them a filter. A filter expresses one or more
- conditions that an entry must satisfy in order to be returned as part of the
- outcome. This allows the set of entries returned to be reduced to only those
- relevant.
- 7.3 Directory interrogation
- 7.3.1 Read
- A read request is aimed at a particular entry, and causes the values of
- some or all of the attributes of that entry to be returned. Where only some
- attributes are to be returned, the DUA supplies the list of attribute types of
- interest.
- 7.3.2 Compare
- A compare request is aimed at a particular attribute of a particular
- entry, and causes the Directory to check whether a supplied value matches a value
- of that attribute.
- Note - For example, this can be used to carry out password checking, where
- the password, held in the Directory, might be inaccessible for read, but
- accessible for compare.
- 7.3.3 List
- A list request causes the Directory to return the list of immediate
- subordinates of a particular named entry in the DIT.
- 7.3.4 Search
- A search request causes the Directory to return information from all of
- the entries within a certain portion of the DIT which satisfy some filter. The
- information returned from each entry consists of some or all of the attributes of
- that entry, as with read.
- 7.3.5 Abandon
- An abandon request, as applied to an outstanding interrogation request,
- informs the Directory that the originator of the request is no longer interested
- in the request being carried out. The Directory may, for example, cease
- processing the request, and may discard any results so far achieved.
-
-
-
-
- PAGE4 Fascicle VIII.8 - Rec.X.500
-
- 7.4 Directory modification
- 7.4.1 Add entry
- An add entry request causes a new leaf entry (either an object entry, or
- an alias entry) to be added to the DIT.
- Note - In its present form this service is intended to be used to add
- entries which will remain as leaves, such as entries for people or application
- entities, rather than to add whole subtrees by repeated applications of this
- service. It is envisaged that the service will be enhanced in the future to cater
- to the more general case.
- 7.4.2 Remove entry
- A remove entry request causes a leaf entry to be removed from the DIT.
- Note - As with add entry, this service is presently intended for operation
- on "true leaf" entries, and will be enhanced in the future for the general case.
- 7.4.3 Modify entry
- A modify entry request causes the Directory to execute a sequence of
- changes to a particular entry. Either all of the changes are made, or none of
- them, and the DIB is always left in a state consistent with the schema. The
- changes allowed include the addition, removal, or replacement of attributes or
- attribute values.
- 7.4.4 Modify relative distinguished name
- A modify relative distinguished name (RDN) request causes the relative
- distinguished name of a leaf entry (either an object entry or an alias entry) in
- the DIT to be modified by the nomination of different distinguished attribute
- values.
- 7.5 Other outcomes
- 7.5.1 Errors
- Any service may fail, for example because of problems with the user
- supplied parameters, in which case an error is reported. Information is returned
- with the error, where possible, to assist in correcting the problem. However, in
- general, only the first error encountered by the Directory is reported. Besides
- the above-mentioned example of problems with the parameters supplied by the user
- (particularly invalid names for entries or invalid attribute types), errors may
- arise from violations of security policy, schema rules, and service controls.
- 7.5.2 Referrals
- A service may fail because the particular access point to which the DUA is
- bound is not the most suitable for carrying out the request, e.g. because the
- information affected by the request is (logically) far away from the access
- point. In this case the Directory may return a referral, which suggests an
- alternative access point at which the DUA can make its request.
- Note - The Directory and the DUA may each have a preference as to whether
- referrals are used, or whether the requests are chained (see S 8.3.3.2). The DUA
- can express its preference by means of service controls. The Directory makes the
- final decision as to which approach is used.
- 8 The distributed Directory
- Note - the models of the directory are defined in Recommendation X.501
- while the procedures for the operation of the distributed Directory are specified
- in Recommendation X.518.
- 8.1 Functional model
- The functional model of the Directory is shown in Figure 4/X.500.
- FIGURE 4/X.500 - T0704240-88
-
- A Directory System Agent (DSA) is an OSI application process which is part
- of the Directory and whose role is to provide access to the DIB to DUAs and/or
- other DSAs. A DSA may use information stored in its local data base or interact
- with other DSAs to carry out requests. Alternatively, the DSA may direct a
- requestor to another DSA which can help carry out the request. Local data bases
- are entirely implementation dependent.
- 8.2 Organizational model
- 8.2.1 A set of one or more DSAs and zero or more DUAs managed by a single
- organization may form a Directory Management Domain (DMD). The organization
- concerned may or may not elect to make use of this series of Recommendations to
- govern the communications among the functional components within the DMD.
- 8.2.2 Subsequent Recommendations specify certain aspects of the behaviour of
- DSAs. For this purpose, a group of DSAs within one DMD may, at the option of the
- organization which manages the DMD, behave as a single DSA.
-
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
- 8.2.3 A DMD may be an Administration DMD (ADDMD), or a Private DMD (PRDMD),
- depending on whether or not it is being operated by a public
- telecommunications organization.
- Note - It should be recognized that the provision of support for private
- directory systems by CCITT members falls within the framework of national
- regulations. Thus, the technical possibilities described may or may not be
- offered by an Administration which provides directory services. The internal
- operation and configuration of private DMDs is not within the scope of envisaged
- CCITT Recommendations.
- 8.3 Operation of the model
- 8.3.1 The DUA interacts with the Directory by communicating with one or more
- DSAs. A DUA need not be bound to any particular DSA. It may interact directly
- with various DSAs to make requests. For some administrative reasons, it may not
- always be possible to interact directly with the DSA which needs to carry out the
- request, e.g. to return some directory information. It is also possible that the
- DUA can access the Directory through a single DSA. For this purpose, DSAs will
- need to interact with each other.
- 8.3.2 The DSA is concerned with carrying out the requests of DUAs and with
- obtaining the information where it does not have the necessary information. It
- may take the responsibility to obtain the information by interacting with other
- DSAs on behalf of the DUA.
- 8.3.3 A number of cases of request handling have been identified, as illustrated
- in Figures 57/X.500, and described below.
- 8.3.3.1 In Figure 5a/X.500, the DSA C receives a referral from DSA A and is
- responsible for either conveying the request to the DSA B (named in the referral
- from DSA A) or conveying the referral back to the originating DUA.
- FIGURE 5a/X.500 - T0704250-88
-
- Note - If DSA C returns the referral to the DUA, the "request (to B)" will
- not occur. Similarly, if DSA C conveys the request to DSA B, it will not
- return a referral to the DUA.
- In Figure 5b/X.500, the DUA receives the referral from DSA C and is
- responsible for reissuing the request directly to DSA A (named in the referral
- from DSA C).
- FIGURE 5b/X.500 - 0704260-88
-
- 8.3.3.2 Figure 6/X.500 shows DSA chaining, whereby the request can be passed
- through several DSAs before the response is returned.
- FIGURE 6/X.500 - T0704270-88
-
- 8.3.3.3 Figure 7/X.500 shows multicasting, where the DSA associated with the
- DUA carries out the request by forwarding it to two or more other DSAs, the
- request to each DSA being identical.
- FIGURE 7/X.500 - T0704280-88
-
- 8.3.4 All of the approaches have their merits. For example, the approach in
- Figure 5/X.500 may be used where it is desirable to offload the burden from the
- local DSA. In other circumstances, a hybrid approach that combines a more
- elaborate set of functional interactions may be needed to satisfy the initiator's
- request, as illustrated in Figure 8/X.500.
- FIGURE 8/X.500 - T0704290-88
-
- 9 Directory protocols
- Note - The OSI application layer protocols defined to allow DUAs and DSAs
- in different open systems to cooperate are specified in Recommendation X.519.
- 9.1 There are two Directory protocols:
- - the Directory Access Protocol (DAP), which defines the exchange of
- requests and outcomes between a DUA and a DSA;
- - the Directory System Protocol (DSP), which defines the exchange of
- requests and outcomes between two DSAs.
- 9.2 Each protocol is defined by an application context, each containing a set
- of protocol elements. For example, the DAP contains protocol elements associated
- with interrogating and modifying the Directory.
- 9.3 Each application context is made up of application service elements. These
- application service elements are defined to use the Remote Operations Service
-
-
-
-
- PAGE4 Fascicle VIII.8 - Rec.X.500
-
- (ROS) of Recommendation X.219 to structure and support their interactions. Thus
- the DAP and DSP are defined as sets of remote operations and errors using the ROS
- notation.
- ANNEX A
- (to Recommendation X.500)
- Applying the Directory
- This annex is not an integral part of this Recommendation.
- A.1 The Directory environment
- Note - In this S, the term "network" is used with its general meaning to
- denote the set of interlinked systems and processes relevant to any
- telecommunications service, not only one which relates to the OSI network layer.
- The Directory exists in and provides services in the following
- environment:
- a) many telecommunications networks will be on a large scale, and will
- constantly undergo change:
- 1) objects of various kinds will enter and leave the network without
- warning and may do so either singly or in groups;
- 2) the connectivity of the objects (particularly network nodes) will
- change, owing to the addition or removal of paths between them;
- 3) various characteristics of the objects, such as their addresses,
- availability, and physical locations, may change at any time;
- b) although the overall rate of changes is high, the useful lifetime of
- any particular object is not short. An object will typically be
- involved in communications much more frequently that it will change its
- address, availability, physical location, etc.;
- c) the objects involved in current telecommunications services are
- typically identified by numbers or other strings of symbols, selected
- for their ease of allocation or processing but not for ease of use by
- human beings.
- A.2 Directory service characteristics
- The need for directory capabilities arises from:
- a) the desire to isolate (as far as possible) the user of the network from
- the frequent changes to it. This can be accomplished by placing a
- "level of indirection" between the users and the objects with which
- they deal. This involves the users referring to objects by name, rather
- than by, for example, address. The Directory provides the necessary
- mapping service;
- b) the desire to provide a more "user-friendly" view of the network. For
- example, the use of aliases, the provision of "yellow-pages" (see
- A.3.5) etc., helps to relieve the burden of finding and using network
- information.
- The Directory allows users to obtain a variety of information about the
- network, and provides for the maintenance, distribution and security of that
- information.
- A.3 Patterns of use of the directory
- Note - This subclause is concerned only with Directory retrieval: it is
- assumed that the Directory modification services are used solely to maintain the
- DIB in the form necessary for the application over time.
- A.3.1 Introduction
- The Directory service is defined in these standards in terms of particular
- requests that a DUA can make and the parameters of them. An application designer
- is likely, however, to think in more goal-oriented terms when considering the
- information retrieval requirements of the Directory in that application.
- Accordingly, this clause describes a number of high-level patterns of use of the
- Directory service that are likely to be relevant to many applications.
- A.3.2 Look-up
- The straight Directory look-up is likely to be the most frequent type of
- query of the Directory. It involves the DUA supplying the distinguished name of
- an object, together with an attribute type. The Directory will return any
- value(s) corresponding that attribute type. This is a generalization of the
- classic directory function, which is obtained when the attribute type requested
- corresponds to a particular type of address. Attribute types for various kinds of
- address are standardized, including OSI PSAP address, Message Handling O/R
- address, and telephone and telex numbers.
- Look-up is supported by the read service, which also provides the
-
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
- following further generalizations:
- - look-up can be based upon names other than the distinguished name of
- the object, e.g. aliases;
- - the values from a number of attribute types can be requested with a
- single request: the extreme case being that the values of all
- attributes in the entry are to be returned.
- A.3.3 User-friendly naming
- Names can be given to objects in such a way as to maximize the chances
- that these names can be predicted (or perhaps remembered) by human users. Names
- which have this property would typically be made up of attributes which are
- somehow inherent to the object, rather than being fabricated for the purpose. The
- name of an object will be common among all of the applications which refer to it.
- A.3.4 Browsing
- In many human-oriented uses of the Directory, it may not be possible for
- the user (or DUA) to directly quote a name, user-friendly or otherwise, for the
- object about which information is sought. However, perhaps the user will "know it
- when he sees it". The browsing capability will allow a human user to wander about
- the DIB looking for the appropriate entries.
- Browsing is accomplished by combinations of the list and search services,
- possibly in conjunction with read (although the search service includes the
- capability of read).
- A.3.5 "Yellow Pages"
- There are a variety of ways to provide a "Yellow Pages" type capability.
- The simplest is based upon filtering, using assertions about particular
- attributes whose values are the categories (e.g. the "Business Category"
- attribute type defined in Recommendation X.520). This approach does not require
- any special information being set-up in the DIT, except to ensure that the
- requisite attributes are present. However, in the general case, it may be
- expensive to search where there is a large population because filtering requires
- the generation of the universal set which is to be filtered.
- An alternative approach is possible, based upon the setting up of special
- subtrees, whose naming structures are designed especially for "Yellow Pages" type
- searching. Shown in Figure A1/X.500 is an example of a "Yellow Pages" subtree
- populated by alias entries only. In reality, the entries within the "Yellow
- Pages" subtrees may be a mixture of object and alias entries, so long as there
- exists only one object entry for each object stored in the Directory.
- FIGURE A-1/X.500 - T0704300-88
-
- A.3.6 Groups
- A group is a set whose membership can change over time by explicit
- addition and removal of members. The group is an object, as are its members. The
- Directory can be requested to:
- - indicate whether or not a particular object is a member of a group;
- - list the membership of a group.
- Groups are supported by having the entry for the group contain a multiple
- valued "Member" attribute (such an attribute type is defined in
- Recommendation X.520). The two capabilities mentioned can then be carried out by
- means of compare and read respectively.
- A member of a group could itself be a group, if this is meaningful for the
- application. However, the necessary recursive verification and expansion
- services would have to be created by the DUA out of the non-recursive versions
- provided.
- A.3.7 Authentication
- Many applications require the objects taking part to offer some proof of
- their identify before they are permitted to carry out some action. The Directory
- provides support for this authentication process. (As a separate matter, the
- Directory itself requires its users to authenticate themselves, so as to support
- access control).
- The more straightforward approach to authentication, called "simple
- authentication", is based upon the Directory holding a "User Password" attribute
- in the entry for any user that wishes to be able to authenticate itself to a
- Service. At the request of the Service, the Directory will confirm or deny that a
- particular value supplied is actually the user's password. This avoids the user
- needing a different password for every Service. In cases where the exchange of
- passwords in a local environment that uses simple authentication is considered to
-
-
-
-
- PAGE4 Fascicle VIII.8 - Rec.X.500
-
- be inappropriate, the Directory optionally provides means to protect those
- passwords against replay or misuse by a one way function.
- The more complex approach, called "strong authentication" is based upon
- public key cryptography, where the Directory acts as a repository of users'
- public encryption keys, suitably protected against tampering. The steps that
- users can take to obtain each other's public keys from the Directory, and then to
- authenticate with each other using them, are described in detail in
- Recommendation X.509.
- A.4 Generic applications
- A.4.1 Introduction
- There are a number of generic applications which can be imagined as
- implicitly supported by the Directory: applications which are not specific to any
- particular telecommunications service. Two such applications are described
- herein: the inter-personal communications directory and the inter- system
- communications directory (for OSI).
- Note - Authentication, described in the previous subclause as an "access
- pattern" could alternatively be thought of as a generic Directory application.
- A.4.2 Inter-personal communications
- The intent of this application is to provide humans or their agents with
- information on how to communicate with other humans, or groups thereof.
- The following classes of objects are certainly involved: person,
- organizational role and group. Many other classes are involved too, perhaps in a
- less direct way, including: country, organization, organizational unit.
- The attribute types concerned, other than those used in naming, are
- generally the addressing attributes. Typically the entry for a particular person
- will have the addresses corresponding to each of the communication methods by
- which that person can be reached, selected from an open-ended list which includes
- at least the following: telephony, electronic mail, telex, ISDN, physical
- delivery (e.g. the postal system), facsimile. In some cases, such as electronic
- mail, the entry will have some additional information such as the types of
- information which the user's equipment can handle. If authentication is to be
- supported, then User Password and/or Credentials will be needed.
- The naming schemes used for the vario s object classes should be user-
- friendly, with aliases being set up as appropriate to provide alternative names,
- provide continuity after a name change, etc.
- The following access patterns will be manifested in this application:
- look-up, user-friendly naming, browsing, "Yellow Pages", and groups. To varying
- degrees, authentication will also be used.
- A.4.3 Inter-system communications (for OSI)
- According to the OSI Reference Model, two Directory functions are required
- in OSI, one, operating in the application layer, which maps application-titles
- onto presentation-addresses, and one, in t e network layer, which maps NSAP-
- addresses onto SNPA-addresses (SNPA = Subnetwork Point of Attachment).
- Note - For the remainder of this , only the application layer case is
- dealt with.
- This function is carried out by consulting the Directory if the
- information required to accomplish the mapping is not conveniently available by
- other means.
- The users are application-entities and the object classes of interest are
- also applicationentities, or subclasses thereof.
- The main attribute type concerned, other than those used for naming, is
- the presentationaddress. Other attribute types, not viewed as necessary for the
- directory function itself, could support verifying or finding out the application
- entity type, or the lists of application contexts, abstract syntaxes, etc.
- supported. The authentication-related attribute types could also be relevant.
- The main access pattern to be manifested will be look-up.
-
-
-
-
-
-
-
-
-
-
-
-
-
- Fascicle VIII.8 - Rec.X.500 PAGE1
-
-